Precision machine vision inspection systems (or “vision systems” for short) can be utilized to obtain precise dimensional measurements of inspected objects and to inspect various other object characteristics. Such systems may include a computer, a camera and optical system, and a precision stage that is movable in multiple directions to allow workpiece inspection. One exemplary prior art system that can be characterized as a general-purpose “off-line” precision vision system is the commercially available QUICK VISION® series of PC-based vision systems and QVPAK® software available from Mitutoyo America Corporation (MAC), located in Aurora, Ill. The features and operation of the QUICK VISION® series of vision systems and the QVPAK® software are generally described, for example, in the QVPAK 3D CNC Vision Measuring Machine User's Guide, published January 2003, and the QVPAK 3D CNC Vision Measuring Machine Operation Guide, published September 1996, each of which is hereby incorporated by reference in their entirety. This type of system is able to use a microscope-type optical system and move the stage so as to provide inspection images of either small or relatively large workpieces at various magnifications.
General purpose precision machine vision inspection systems, such as the QUICK VISION™ system, are also generally programmable to provide automated video inspection. U.S. Pat. No. 6,542,180 (the '180 patent) teaches various aspects of such automated video inspection and is incorporated herein by reference in its entirety. As taught in the '180 patent, automated video inspection metrology instruments generally have a programming capability that allows an automatic inspection event sequence to be defined by the user for each particular workpiece configuration. This can be implemented by text-based programming, for example, or through a recording mode which progressively “learns” the inspection event sequence by storing a sequence of machine control instructions corresponding to a sequence of inspection operations performed by a user with the aid of a graphical user interface, or through a combination of both methods. Such a recording mode is often referred to as “learn mode” or “training mode” or “record mode.” Once the inspection event sequence is defined in “learn mode,” such a sequence can then be used to automatically acquire (and additionally analyze or inspect) images of a workpiece during “run mode.”
The machine control instructions including the specific inspection event sequence (i.e., how to acquire each image and how to analyze/inspect each acquired image) are generally stored as a “part program” or “workpiece program” that is specific to the particular workpiece configuration. For example, a part program defines how to acquire each image, such as how to position the camera relative to the workpiece, at what lighting level, at what magnification level, etc. Further, the part program defines how to analyze/inspect an acquired image, for example, by using one or more video tools such as edge/boundary detection video tools.
Video tools (or “tools” for short) include GUI features and predefined image analysis operations such that operation and programming can be performed by non-expert operators. Video tools may be operated by a user to accomplish manual inspection and/or machine control operations (in “manual mode”). Their set-up parameters and operation can also be recorded during learn mode, in order to create automatic inspection programs. Exemplary video tools include edge location measurement tools, which may include a tool configuration referred to as a “box tool” used to locate an edge feature of a workpiece. For example, commonly assigned U.S. Pat. No. 7,627,162, which is incorporated herein by reference in its entirety, teaches various applications of box tools. Another exemplary edge location measurement video tool is referred to as an “arc tool.” For example, commonly assigned U.S. Pat. No. 7,769,222, which is incorporated herein by reference in its entirety, teaches various applications of arc tools.
Various methods are known for locating edge features in workpiece images. For example, various algorithms are known which apply brightness gradient operators to images which include an edge feature to determine its location, e.g., a Canny Edge detector or a differential edge detector. Such edge detection algorithms may be included in the machine vision inspection systems (e.g., in video tools) which also use carefully configured illumination and/or special image processing techniques to enhance brightness gradients or otherwise improve edge location measurement accuracy and repeatability. However, it remains difficult to measure the location of certain edges with the desired level of repeatability, for example, “noisy” edges, such as the edges of irregular surfaces or irregular edges produced by sawing or laser cutting, and/or closely spaced edges. Video tools and/or automatic operations that allow non-expert users to measure such edges with improved reliability and/or repeatability would be desirable.